package com.itheima.home_work.calc_files_size;

import java.io.File;

public class Test {
    public static void main(String[] args) {
        /**
         * 使用代码计算出电脑上的任意一个文件夹中的大小。
         *
         * > 要求：必须是一个多层文件夹
         * >
         * > 效果：(每个人的具体数据都不一样,以实际情况为准)
         */

        String path = "D:\\ITCAST\\唐老师\\JavaSE进阶\\day08-Map集合、Stream、File\\讲义";
        File file = new File(path);
        int size = calcDirSize(file, 0);
        System.out.println(size);
    }

    public static int calcDirSize(File dir, int size) {
        File[] fileList = dir.listFiles();

        for (int i = 0; i < fileList.length; i++) {
            if (fileList[i].isDirectory()) {
                size += calcDirSize(fileList[i], size);
            } else {
                size += (int) fileList[i].length();
            }
        }
        return size;
    }
}
